package com.z.blog.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.github.pagehelper.PageInfo;
import com.z.base.vo.PageVo;
import com.z.blog.entity.Blog;

import java.util.List;

/**
 * 博客Service接口
 *
 * @author z
 * @date 2022-08-31
 */
public interface IBlogService extends IService<Blog> {

    /**
     * 查询blog
     * @param blog blog 查询条件
     * @param pageVo 请求分页条件
     * @return blog 分页集合
     * */
    PageInfo<Blog> selectBlogPage(Blog blog, PageVo pageVo);

    PageInfo<Blog> selectBlogListByS(Blog blog, PageVo pageVo);

    /**
     * 查询blog推荐TOP
     * @param top 前几条
     * @return blog 集合
     * */
    List<Blog> listRecommendBlogTop(int top);

    /**
     * 查询blog热门TOP
     * @param top 前几条
     * @return blog 集合
     * */
    List<Blog>  listHotBlogTop(int top);

    boolean deleteById(int id);

    boolean updateById(Blog blog);

    void updateViews(Blog blog);

    PageInfo<Blog> selectBlogPageByTagId(Long id, PageVo pageVo);
}
